package shujia.day06;

/*
    多态：某一个事物，在不同时刻下的不同状态
    实现多态有3个前提：
        1、必须要有继承关系
        2、要有方法的实现
        3、要有父类的引用指向子类对象

    水：气态的水，固态的水，液态的水
    水果：苹果，香蕉，哈密瓜
    动物：狗，猫

 */
class Animal{
    String name;
    int age;

    Animal(){

    }

    public Animal(String name, int age) {
        this.name = name;
        this.age = age;
    }

    public void eat(){
        System.out.println("吃饭");
    }

    public void sleep(){
        System.out.println("睡觉");
    }
}

class Dog extends Animal{
    public Dog() {
    }

    public Dog(String name, int age) {
        super(name, age);
    }

    @Override
        public void eat(){
            System.out.println("🐕吃🥩");
    }

    @Override
    public void sleep(){
        System.out.println("🐕侧着睡");
    }
}

class Demo1{

}

public class DuoTaiDemo1 {
    public static void main(String[] args) {
        //要有父类的引用指向子类对象
        Animal a1 = new Dog(); //多态 //必须要存在继承关系，或者待会要说的实现关系
//        Dog d1 = new Dog();

//        Demo1 a2 = new Dog();
    }
}
